/**
 * 地图
 * 
 */

function ComplexCustomOverlay(point, text){
	this._point = point;
    this._text = text;
  };
  ComplexCustomOverlay.prototype = new BMap.Overlay();
  
  ComplexCustomOverlay.prototype.initialize = function(map){
	      this._map = map;
	      var div =  this._div = document.createElement("div");
	      
	      var div2 = document.createElement("div");
	      div.appendChild(div2);
	      
	      div.id = "marker" ;
	      div.className = "marker" ;
	      div.style.display = "block";
	      div2.className = "marker_bg";
	
	      
	      var strong = document.createElement("strong");
 	      div2.appendChild(strong);	      
 	      strong.appendChild(document.createTextNode(this._text));  
	      
	      var that = this;

	      map.getPanes().labelPane.appendChild(div);
	      return div;
	    };
	    
	    ComplexCustomOverlay.prototype.draw = function(){
	      var map = this._map;
	      var pixel = map.pointToOverlayPixel(this._point);
	      
	      this._div.style.left = pixel.x  + "px";
	      this._div.style.top  = pixel.y  + "px";
    
	     
	    };
	    
	    ComplexCustomOverlay.prototype.addEventListener = function(event,fun){
	        this._div['on'+event] = fun;
	    };



    //创建地图函数：
    function createMap(center,zoom){
        var map = new BMap.Map("container");//在百度地图容器中创建一个地图
        var defaultPoint = center ;//||new BMap.Point(113.263549 , 23.127099 );
        var defaultZoom = zoom||12 ;
        map.centerAndZoom(defaultPoint,defaultZoom);//设定地图的中心点和坐标并将地图显示在地图容器中
        
        window.map = map;//将map变量存储在全局
    }
    
    //地图事件设置函数：
    function setMapEvent(){
        map.enableDragging();//启用地图拖拽事件，默认启用(可不写)
        map.setMinZoom(14);    // 地图允许的最小级别
        map.setMaxZoom(18);    // 地图允许的最大级别
       // map.enableScrollWheelZoom();//启用地图滚轮放大缩小
        map.disableContinuousZoom(); //禁止连续缩放
        map.enableDoubleClickZoom();//启用鼠标双击放大，默认启用(可不写)
    }
    
    //地图控件添加函数：
    function addMapControl(){
		var ctrl_nav = new BMap.NavigationControl({anchor:BMAP_ANCHOR_TOP_LEFT,type:BMAP_NAVIGATION_CONTROL_SMALL});
		map.addControl(ctrl_nav);
		var ctrl_sca = new BMap.ScaleControl({anchor:BMAP_ANCHOR_BOTTOM_LEFT});
		map.addControl(ctrl_sca);
    }
    
    
    function addMarker(data){
    	if(map){
    	//	map.clearOverlays();
    		var lng = data.point.split("|")[0] ;
    		var lat = data.point.split("|")[1] ;
    		var point = new BMap.Point(lng,lat);
    		
    		var myCompOverlay = new ComplexCustomOverlay(point, data.name);
    	        map.addOverlay(myCompOverlay);
    	           	        
    	}
    }
    
   
    function initMap(data){
		var lng = data.point.split("|")[0] ;
		var lat = data.point.split("|")[1] ;
    	var center = new BMap.Point(lng,lat);
        createMap(center,15);//创建地图
        setMapEvent();//设置地图事件
        addMapControl();//向地图添加控件
    
        addMarker(data);
      
   }
 
	